#ifndef PATTERN_H_
#define PATTERN_H_

#include "CubePileGrid.h"
#include "Constants.h"
#include "HouseEmitter.h"
#include "TextureLoader.h"

#define PATTERN_HEIGHT 3
#define PATTERN_WIDTH 4

class Pattern
{
	void renderSquare();
	float colors[NUM_CUBE_TEXTURES][3];
	bool checkRange(int xStart, int yStart);
	int characterPosX, characterPosZ;
	int solvedAtLeft, solvedAtTop;
public:
	Pattern();
	virtual ~Pattern();
	int pattern [PATTERN_WIDTH][PATTERN_HEIGHT];
	bool checkPattern(CubePileGrid * cubePiles, HouseEmitter * houseEmitter, TextureLoader * textureLoader, int xStart, int yStart);
	void render();
	bool completed;
	int getCharLeft();
	int getCharTop();
};

#endif /*PATTERN_H_*/
